package br.edu.delta.form;

import java.util.Collection;

import javax.enterprise.context.SessionScoped;
import javax.inject.Inject;

import br.edu.delta.enuns.EnumEstados;
import br.edu.delta.lazy.LeitorLazy;
import br.edu.delta.model.Endereco;
import br.edu.delta.model.Leitor;

/**
 * <p>
 * <b>Title:</b> LeitorForm
 * </p>
 * 
 * <p>
 * <b>Description:</b> LeitorForm
 * </p>
 * 
 * <p>
 * <b>Company: </b>
 * </p>
 * 
 * @author Denis
 * 
 * @version 1.0.0
 */
@SessionScoped
public class LeitorForm extends Formulario<Leitor> {

	/** Atributo serialVersionUID. */
	private static final long serialVersionUID = -1L;

	/** Atributo listagemUsuario. */
	@Inject
	private LeitorLazy listagemLeitores;

	private Collection<EnumEstados> listaEstados;
	
	private Endereco endereco;

	/**
	 * Retorna o valor do atributo <code>listagemLeitores</code>
	 * 
	 * @return <code>LeitorLazy</code>
	 */
	public LeitorLazy getListagemLeitores() {

		return listagemLeitores;
	}

	/**
	 * Retorna o valor do atributo <code>listaEstados</code>
	 * 
	 * @return <code>Collection<EnumEstados></code>
	 */
	public Collection<EnumEstados> getListaEstados() {

		return listaEstados;
	}

	/**
	 * Define o valor do atributo <code>listaEstados</code>.
	 * 
	 * @param listaEstados
	 */
	public void setListaEstados(Collection<EnumEstados> listaEstados) {

		this.listaEstados = listaEstados;
	}

	
	/**
	 * Retorna o valor do atributo <code>endereco</code>
	 *
	 * @return <code>Endereco</code>
	 */
	public Endereco getEndereco() {
	
		if(endereco == null){
			
			endereco = new Endereco();
		}
		
		return endereco;
	}

	
	/**
	 * Define o valor do atributo <code>endereco</code>.
	 *
	 * @param endereco 
	 */
	public void setEndereco(Endereco endereco) {
	
		this.endereco = endereco;
	}
	
	

}
